#ifndef CONTROLLER_H
#define CONTROLLER_H
#include <buffer.h>
#include <produtor.h>
#include <consumidor.h>
#include <QTableWidget>
#include <QObject>
#include <QTableWidgetItem>
#include <QColor>
#include <QMutex>
#include <tabelathreads.h>

class Controller: public QObject
{
                Q_OBJECT
public:
                int numeroConsumidor, numeroProdutor, bufferSize,totalProdutos,antEscrito;
                Buffer * buffer;
                Produtor ** produtor;
                Consumidor ** consumidor;
                TabelaThreads * threadTabelaThreads;
                QTableWidget* tabela;
                void inicializaThreads();
                Controller(int,int,int,int,QTableWidget*);
                Controller(QObject*);
                void setTable(QTableWidget *);
public slots:
                void trataMudanca(int *,int,QMutex * );
                void trataLeitura(int * buffer,int i,QMutex *);
};

#endif // CONTROLLER_H
